package com.ecommerce.dal.service;

import java.util.List;

import com.ecommerce.dal.entity.Category;

public interface ICategoryManagerService {
	/**
	 * @param Category category
	 * @return Sub Category details 
	 */
	public Category retrieveCategory(long categoryId);
	
	/**
	 * @param String categoryName
	 * @return List of all matching Categories
	 */
	public Category retrieveCategory(String categoryName);
	
	/**
	 * @param specific Category category
	 */
	public void saveCategory(Category category);
	/**
	 * @return List of all Category Objects
	 */
	public List<Category> retrieveAllCategories();
	/**
	 * @param Integer categoryID
	 * @return List of all sub-categories of a specific Category
	 */
	public List<Category> retrieveAllSubCategories(long categoryId);
	
	void updateCategory(Category category);
	void deleteCategory(Category category);
	
}
